leetcode 46